4.9.7.2 Un Altro Esempio di Texture Stratificata
Fig. 165-Primo campione
Non è particolarmente interessante,
vero ? Questo è il motivo per cui useremo delle texture stratificate.
Per prima cosa, aggiungiamo uno strato di due grigi diversi, parzialmente
trasparenti e li disponiamo come avevamo disposto i colori rosso e bianco,
ma aggiungiamo loro anche un po' di turbolenza per rendere la sfumatura
più realistica. Aggiungiamo la seguente scatola alla scena precedente
e renderizziamo di nuovo (vedi file layered2.pov)
#declare FADED_TEXTURE =
// scacchi rossi e bianchi
texture {
pigment {
checker
color rgb<0.920, 0.000, 0.000>
color rgb<1.000, 1.000, 1.000>
scale <0.2500, 0.2500, 0.2500>
}
}
// grigi per sfumare il rosso e il bianco
texture {
pigment {
checker
color rgbf<0.632, 0.612, 0.688, 0.698>
color rgbf<0.420, 0.459, 0.520, 0.953>
turbulence 0.500
scale <0.2500, 0.2500, 0.2500>
}
}
// parallelepipedo a scacchi rossi e bianchi sfumati
box { <-1, -1, -1>, <1, 1, 1>
texture {
FADED_TEXTURE
}
translate <1.5, 1.2, 0>
}
Fig. 166-Secondo
Nonostante che sia una differenza piuttosto
sottile, notiamo che la tovaglia non sembra più così nuova.
Dato che vogliamo inserire poi una bottiglia di vino nella scena del picnic,
abbiamo pensato che potrebbe essere un tocco simpatico l'aggiungere una
macchia di vino o due. Questo esempio potrebbe essere ottenuto aggiungendo
un blob appiattito, ma darebbe l'effetto di vino rovesciato su un tavolo
, non di una macchia. Quindi, dobbiamo aggiungere un altro strato. Di nuovo,
aggiungiamo un altro parallelepipedo e renderizziamo nuovamente.
#declare STAINED_TEXTURE =
// scacchi rossi e bianchi
texture {
pigment {
checker
color rgb<0.920, 0.000, 0.000>
color rgb<1.000, 1.000, 1.000>
scale <0.2500, 0.2500, 0.2500>
}
}
// grigi per sfumare gli scacchi
texture {
pigment {
checker
color rgbf<0.634, 0.612, 0.688, 0.698>
color rgbf<0.421, 0.463, 0.518, 0.953>
turbulence 0.500
scale <0.2500, 0.2500, 0.2500>
}
}
// macchie di vino
texture {
pigment {
spotted
color_map {
[ 0.000 color rgb<0.483, 0.165, 0.165> ]
[ 0.329 color rgbf<1.000, 1.000, 1.000, 1.000> ]
[ 0.734 color rgbf<1.000, 1.000, 1.000, 1.000> ]
[ 1.000 color rgb<0.483, 0.165, 0.165> ]
}
turbulence 0.500
frequency 1.500
}
}
// parallelepipedo macchiato
box { <-1, -1, -1>, <1, 1, 1>
texture {
STAINED_TEXTURE
}
translate <-1.5, -1.2, 0>
}
Fig. 167-Terzo campione
Ed ora abbiamo una texture per una tovaglia
con una sua personalità. Un ultimo tocco che possiamo aggiungere
alla tovaglia è qualche spiegazzatura, per dare alla tovaglia un'apparenza
un po' 'vissuta'. Questo in effetti non è un altro strato vero e
proprio, ma quando lavoriamo con le texture stratificate, dobbiamo fare
attenzione che le modifiche alle normali alla superficie si trovino sullo
strato più esterno delle texture. I cambiamenti alle normali degli
strati interni non hanno alcun effetto sulla texture finale, indipendentemente
dalla trasparenza degli strati soprastanti.
Aggiungiamo quest'ultimo parallelepipedo al file e renderizziamo nuovamente
(vedi il file layered4.pov).
#declare WRINKLED_TEXTURE =
// scacchi rossi e bianchi
texture {
pigment {
checker
color rgb<0.920, 0.000, 0.000>
color rgb<1.000, 1.000, 1.000>
scale <0.2500, 0.2500, 0.2500>
}
}
// grigi per sfumare gli scacchi
texture {
pigment {
checker
color rgbf<0.632, 0.612, 0.688, 0.698>
color rgbf<0.420, 0.459, 0.520, 0.953>
turbulence 0.500
scale <0.2500, 0.2500, 0.2500>
}
}
// le macchie di vino
texture {
pigment {
spotted
color_map {
[ 0.000 color rgb<0.483, 0.165, 0.165> ]
[ 0.329 color rgbf<1.000, 1.000, 1.000, 1.000> ]
[ 0.734 color rgbf<1.000, 1.000, 1.000, 1.000> ]
[ 1.000 color rgb<0.483, 0.165, 0.165> ]
}
turbulence 0.500
frequency 1.500
}
normal {// qui vengono aggiunte le spiegazzature
wrinkles 5.0000
}
}
// parallelepipedo 'spiegazzato'
box { <-1, -1, -1>, <1, 1, 1>
texture {
WRINKLED_TEXTURE
}
translate <1.5, -1.2, 0>
}
Fig. 168-Quarto campione
Bene, questa potrebbe non essere la tovaglia
che vorremmo invitare ad un picnic, ma se confrontiamo l'ultimo parallelepipedo
con il primo, vediamo quanta profondità, dimensione e personalità
posiamo aggiungere ad un oggetto utilizzando texture appropriate.
Un ultima nota : quanto vale per le normali nelle texture stratificate,
non vale per le finiture. Se una texture di uno strato inferiore contiene
una finitura, per esempio a specchio, questa è visibile in tutti
i punti in cui la trasparenza degli strati soprastanti lo consente.